home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 011 / ileave.arc / SYSINT13.ASM < prev    next >
Assembly Source File  |  1987-10-06  |  1KB  |  76 lines

  1.     name    test
  2. _text    segment    byte public 'code'
  3. dgroup    group    _data,_bss
  4.     assume    cs:_text,ds:dgroup,ss:dgroup
  5. _text    ends
  6. _data    segment word public 'data'
  7. _d@    label    byte
  8. _data    ends
  9. _bss    segment word public 'bss'
  10. _b@    label    byte
  11. _bss    ends
  12. _text    segment    byte public 'code'
  13.  
  14. public        _sysint13
  15.  
  16. flags        dw    ?
  17.  
  18. @ab        equ    4
  19.  
  20. _sysint13    proc
  21.  
  22.         push    bp
  23.         mov    bp,sp
  24.         
  25.         irp    reg,<ax,bx,cx,dx,si,di,ds,es>
  26.         push    reg
  27.         endm
  28.         
  29.         mov    bx,@ab[bp]
  30.         mov    ax,[bx]
  31.         mov    cx,4[bx]
  32.         mov    dx,6[bx]
  33.         mov    si,10[bx]
  34.         mov    di,12[bx]
  35.         mov    ds,ss:[14][bx]
  36.         mov    es,ss:[16][bx]
  37.         mov    bx,ss:[2][bx]
  38.  
  39.         push    bp
  40.         int    13h
  41.         pop    bp
  42.  
  43.         pushf
  44.         pop    flags
  45.         
  46.         push    bx
  47.         mov    bx,@ab[2][bp]
  48.  
  49.         pop    [2][bx]
  50.         mov    ss:[16][bx],es
  51.         mov    ss:[14][bx],ds
  52.         mov    [bx],ax
  53.         mov    4[bx],cx
  54.         mov    6[bx],dx
  55.         mov    10[bx],si
  56.         mov    12[bx],di
  57.  
  58.         irp    reg,<es,ds,di,si,dx,cx,bx,ax>
  59.         pop    reg
  60.         endm
  61.         
  62.         pop    bp
  63.         mov    ax,flags
  64.         
  65.         ret
  66.  
  67. _sysint13    endp
  68. _text    ends
  69. _data    segment word public 'data'
  70. _s@    label    byte
  71. _data    ends
  72. _text    segment    byte public 'code'
  73.     public    _sysint13
  74. _text    ends
  75.     end
  76.